home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1997 July: Mac OS SDK / Dev.CD Jul 97 SDK1.toast / Development Kits (Disc 1) / Interfaces&Libraries / Interfaces / AIncludes / Printing.a < prev    next >
Encoding:
Text File  |  1996-01-24  |  15.9 KB  |  686 lines  |  [TEXT/MPS ]

  1. ;
  2. ;    File:        Printing.a
  3. ;
  4. ;    Contains:    Print Manager Interfaces.
  5. ;
  6. ;    Version:    Technology:    System 7.5
  7. ;                Package:    Universal Interfaces 2.2 in “MPW” on ETO #20
  8. ;
  9. ;    Copyright:    © 1984-1995 by Apple Computer, Inc.
  10. ;                All rights reserved.
  11. ;
  12. ;    Bugs?:        If you find a problem with this file, use the Apple Bug Reporter
  13. ;                stack.  Include the file and version information (from above)
  14. ;                in the problem description and send to:
  15. ;                    Internet:    apple.bugs@applelink.apple.com
  16. ;                    AppleLink:    APPLE.BUGS
  17. ;
  18. ;
  19.  
  20.     IF &TYPE('__PRINTING__') = 'UNDEFINED' THEN
  21. __PRINTING__ SET 1
  22.  
  23.  
  24.     IF &TYPE('__ERRORS__') = 'UNDEFINED' THEN
  25.     include 'Errors.a'
  26.     ENDIF
  27. ;        include 'ConditionalMacros.a'                                ;
  28.  
  29.     IF &TYPE('__QUICKDRAW__') = 'UNDEFINED' THEN
  30.     include 'Quickdraw.a'
  31.     ENDIF
  32. ;        include 'Types.a'                                            ;
  33. ;        include 'MixedMode.a'                                        ;
  34. ;        include 'QuickdrawText.a'                                    ;
  35.  
  36.     IF &TYPE('__DIALOGS__') = 'UNDEFINED' THEN
  37.     include 'Dialogs.a'
  38.     ENDIF
  39. ;        include 'Memory.a'                                            ;
  40. ;        include 'Menus.a'                                            ;
  41. ;        include 'Controls.a'                                        ;
  42. ;        include 'Windows.a'                                        ;
  43. ;            include 'Events.a'                                        ;
  44. ;                include 'OSUtils.a'                                ;
  45. ;        include 'TextEdit.a'                                        ;
  46.  
  47. iPFMaxPgs                        EQU        128
  48. iPrPgFract                        EQU        120                    ;Page scale factor. ptPgSize (below) is in units of 1/iPrPgFract
  49. iPrPgFst                        EQU        1                    ;Page range constants
  50. iPrPgMax                        EQU        9999
  51. iPrRelease                        EQU        3                    ;Current version number of the code.
  52. iPrSavPFil                        EQU        -1
  53. iPrAbort                        EQU        $0080
  54. iPrDevCtl                        EQU        7                    ;The PrDevCtl Proc's ctl number
  55. lPrReset                        EQU        $00010000            ;The PrDevCtl Proc's CParam for reset
  56. lPrLineFeed                        EQU        $00030000
  57. lPrLFStd                        EQU        $0003FFFF            ;The PrDevCtl Proc's CParam for std paper advance
  58. lPrLFSixth                        EQU        $0003FFFF
  59. lPrPageEnd                        EQU        $00020000            ;The PrDevCtl Proc's CParam for end page
  60. lPrDocOpen                        EQU        $00010000
  61. lPrPageOpen                        EQU        $00040000
  62. lPrPageClose                    EQU        $00020000
  63. lPrDocClose                        EQU        $00050000
  64. iFMgrCtl                        EQU        8                    ;The FMgr's Tail-hook Proc's ctl number
  65. iMscCtl                            EQU        9                    ;The FMgr's Tail-hook Proc's ctl number
  66. iPvtCtl                            EQU        10                    ;The FMgr's Tail-hook Proc's ctl number
  67.  
  68. pPrGlobals                        EQU        $00000944            ;The PrVars lo mem area:
  69. bDraftLoop                        EQU        0
  70. bSpoolLoop                        EQU        1
  71. bUser1Loop                        EQU        2
  72. bUser2Loop                        EQU        3
  73. fNewRunBit                        EQU        2
  74. fHiResOK                        EQU        3
  75. fWeOpenedRF                        EQU        4
  76. ;Driver constants 
  77. iPrBitsCtl                        EQU        4
  78. lScreenBits                        EQU        0
  79. lPaintBits                        EQU        1
  80. lHiScreenBits                    EQU        $00000002            ;The Bitmap Print Proc's Screen Bitmap param
  81. lHiPaintBits                    EQU        $00000003            ;The Bitmap Print Proc's Paint [sq pix] param
  82. iPrIOCtl                        EQU        5
  83. iPrEvtCtl                        EQU        6                    ;The PrEvent Proc's ctl number
  84. lPrEvtAll                        EQU        $0002FFFD            ;The PrEvent Proc's CParam for the entire screen
  85. lPrEvtTop                        EQU        $0001FFFD            ;The PrEvent Proc's CParam for the top folder
  86. iPrDrvrRef                        EQU        -3
  87.  
  88. getRslDataOp                    EQU        4
  89. setRslOp                        EQU        5
  90. draftBitsOp                        EQU        6
  91. noDraftBitsOp                    EQU        7
  92. getRotnOp                        EQU        8
  93. NoSuchRsl                        EQU        1
  94. OpNotImpl                        EQU        2                    ;the driver doesn't support this opcode
  95. RgType1                            EQU        1
  96.  
  97. feedCut                            EQU        0
  98. feedFanfold                        EQU        1
  99. feedMechCut                        EQU        2
  100. feedOther                        EQU        3
  101.  
  102. ; typedef SInt8             TFeed
  103.  
  104. scanTB                            EQU        0
  105. scanBT                            EQU        1
  106. scanLR                            EQU        2
  107. scanRL                            EQU        3
  108.  
  109. ; typedef SInt8             TScan
  110. ; A Rect Ptr 
  111. ; typedef Rect                 *TPRect
  112. TPrPort                 RECORD    0
  113. gPort                     ds     GrafPort ; offset: $0 (0)        ;The Printer's graf port.
  114. gProcs                     ds     QDProcs    ; offset: $6C (108)        ;..and its procs
  115. lGParam1                 ds.l   1        ; offset: $A0 (160)        ;16 bytes for private parameter storage.
  116. lGParam2                 ds.l   1        ; offset: $A4 (164)
  117. lGParam3                 ds.l   1        ; offset: $A8 (168)
  118. lGParam4                 ds.l   1        ; offset: $AC (172)
  119. fOurPtr                     ds.b   1        ; offset: $B0 (176)        ;Whether the PrPort allocation was done by us.
  120. fOurBits                 ds.b   1        ; offset: $B1 (177)        ;Whether the BitMap allocation was done by us.
  121. sizeof                     EQU *            ; size:   $B2 (178)
  122.                         ENDR
  123.  
  124. ; typedef struct TPrPort     TPrPort, *TPPrPort
  125. ; Printing Graf Port. All printer imaging, whether spooling, banding, etc, happens "thru" a GrafPort.
  126. ;  This is the "PrPeek" record. 
  127. TPrInfo                 RECORD    0
  128. iDev                     ds.w   1        ; offset: $0 (0)        ;Font mgr/QuickDraw device code
  129. iVRes                     ds.w   1        ; offset: $2 (2)        ;Resolution of device, in device coordinates
  130. iHRes                     ds.w   1        ; offset: $4 (4)        ;..note: V before H => compatable with Point.
  131. rPage                     ds     Rect    ; offset: $6 (6)        ;The page (printable) rectangle in device coordinates.
  132. sizeof                     EQU *            ; size:   $E (14)
  133.                         ENDR
  134.  
  135. ; typedef struct TPrInfo     TPrInfo, *TPPrInfo
  136. ; Print Info Record: The parameters needed for page composition. 
  137. TPrStl                     RECORD    0
  138. wDev                     ds.w   1        ; offset: $0 (0)
  139. iPageV                     ds.w   1        ; offset: $2 (2)
  140. iPageH                     ds.w   1        ; offset: $4 (4)
  141. bPort                     ds.b   1        ; offset: $6 (6)
  142. feed                     ds.b   1        ; offset: $7 (7)
  143. sizeof                     EQU *            ; size:   $8 (8)
  144.                         ENDR
  145.  
  146. ; typedef struct TPrStl     TPrStl, *TPPrStl
  147. TPrXInfo                 RECORD    0
  148. iRowBytes                 ds.w   1        ; offset: $0 (0)
  149. iBandV                     ds.w   1        ; offset: $2 (2)
  150. iBandH                     ds.w   1        ; offset: $4 (4)
  151. iDevBytes                 ds.w   1        ; offset: $6 (6)
  152. iBands                     ds.w   1        ; offset: $8 (8)
  153. bPatScale                 ds.b   1        ; offset: $A (10)
  154. bUlThick                 ds.b   1        ; offset: $B (11)
  155. bUlOffset                 ds.b   1        ; offset: $C (12)
  156. bUlShadow                 ds.b   1        ; offset: $D (13)
  157. scan                     ds.b   1        ; offset: $E (14)
  158. bXInfoX                     ds.b   1        ; offset: $F (15)
  159. sizeof                     EQU *            ; size:   $10 (16)
  160.                         ENDR
  161.  
  162. ; typedef struct TPrXInfo     TPrXInfo, *TPPrXInfo
  163. TPrJob                     RECORD    0
  164. iFstPage                 ds.w   1        ; offset: $0 (0)        ;Page Range.
  165. iLstPage                 ds.w   1        ; offset: $2 (2)
  166. iCopies                     ds.w   1        ; offset: $4 (4)        ;No. copies.
  167. bJDocLoop                 ds.b   1        ; offset: $6 (6)        ;The Doc style: Draft, Spool, .., and ..
  168. fFromUsr                 ds.b   1        ; offset: $7 (7)        ;Printing from an User's App (not PrApp) flag
  169. pIdleProc                 ds.l   1        ; offset: $8 (8)        ;The Proc called while waiting on IO etc.
  170. pFileName                 ds.l   1        ; offset: $C (12)        ;Spool File Name: NIL for default.
  171. iFileVol                 ds.w   1        ; offset: $10 (16)        ;Spool File vol, set to 0 initially
  172. bFileVers                 ds.b   1        ; offset: $12 (18)        ;Spool File version, set to 0 initially
  173. bJobX                     ds.b   1        ; offset: $13 (19)        ;An eXtra byte.
  174. sizeof                     EQU *            ; size:   $14 (20)
  175.                         ENDR
  176.  
  177. ; typedef struct TPrJob     TPrJob, *TPPrJob
  178. ; Print Job: Print "form" for a single print request. 
  179. ; typedef struct TPrint     TPrint, *TPPrint, **THPrint
  180. ; The universal 120 byte printing record 
  181. TPrStatus                 RECORD    0
  182. iTotPages                 ds.w   1        ; offset: $0 (0)        ;Total pages in Print File.
  183. iCurPage                 ds.w   1        ; offset: $2 (2)        ;Current page number
  184. iTotCopies                 ds.w   1        ; offset: $4 (4)        ;Total copies requested
  185. iCurCopy                 ds.w   1        ; offset: $6 (6)        ;Current copy number
  186. iTotBands                 ds.w   1        ; offset: $8 (8)        ;Total bands per page.
  187. iCurBand                 ds.w   1        ; offset: $A (10)        ;Current band number
  188. fPgDirty                 ds.b   1        ; offset: $C (12)        ;True if current page has been written to.
  189. fImaging                 ds.b   1        ; offset: $D (13)        ;Set while in band's DrawPic call.
  190. hPrint                     ds.l   1        ; offset: $E (14)        ;Handle to the active Printer record
  191. pPrPort                     ds.l   1        ; offset: $12 (18)        ;Ptr to the active PrPort
  192. hPic                     ds.l   1        ; offset: $16 (22)        ;Handle to the active Picture
  193. sizeof                     EQU *            ; size:   $1A (26)
  194.                         ENDR
  195.  
  196. ; typedef struct TPrStatus     TPrStatus, *TPPrStatus
  197. ; Print Status: Print information during printing. 
  198. TPfPgDir                 RECORD    0
  199. iPages                     ds.w   1        ; offset: $0 (0)
  200. iPgPos                     ds.l   129        ; offset: $2 (2)        ;ARRAY [0..iPfMaxPgs] OF LONGINT
  201. sizeof                     EQU *            ; size:   $206 (518)
  202.                         ENDR
  203.  
  204. ; typedef struct TPfPgDir     TPfPgDir, *TPPfPgDir, **THPfPgDir
  205. ; PicFile = a TPfHeader followed by n QuickDraw Pics (whose PicSize is invalid!) 
  206. ; This is the Printing Dialog Record. Only used by folks appending their own
  207. ;   DITLs to the print dialogs.    Print Dialog: The Dialog Stream object. 
  208.     IF STRICT_WINDOWS  THEN
  209. ; typedef Ptr                 TPPrDlgRef
  210.     ELSE
  211. TPrDlg                     RECORD    0
  212. Dlg                         ds     DialogRecord ; offset: $0 (0)    ;The Dialog window
  213. pFltrProc                 ds.l   1        ; offset: $AA (170)        ;The Filter Proc.
  214. pItemProc                 ds.l   1        ; offset: $AE (174)        ;The Item evaluating proc.
  215. hPrintUsr                 ds.l   1        ; offset: $B2 (178)        ;The user's print record.
  216. fDoIt                     ds.b   1        ; offset: $B6 (182)
  217. fDone                     ds.b   1        ; offset: $B7 (183)
  218. lUser1                     ds.l   1        ; offset: $B8 (184)        ;Four longs for apps to hang global data.
  219. lUser2                     ds.l   1        ; offset: $BC (188)        ;Plus more stuff needed by the particular
  220. lUser3                     ds.l   1        ; offset: $C0 (192)        ;printing dialog.
  221. lUser4                     ds.l   1        ; offset: $C4 (196)
  222. sizeof                     EQU *            ; size:   $C8 (200)
  223.                         ENDR
  224.  
  225. ; typedef struct TPrDlg     TPrDlg
  226. ; typedef TPrDlg             *TPPrDlg
  227. ; typedef TPrDlg             *TPPrDlgRef
  228.     ENDIF
  229. TGnlData                 RECORD    0
  230. iOpCode                     ds.w   1        ; offset: $0 (0)
  231. iError                     ds.w   1        ; offset: $2 (2)
  232. lReserved                 ds.l   1        ; offset: $4 (4)        ;more fields here depending on call
  233. sizeof                     EQU *            ; size:   $8 (8)
  234.                         ENDR
  235.  
  236. ; typedef struct TGnlData     TGnlData
  237. TRslRg                     RECORD    0
  238. iMin                     ds.w   1        ; offset: $0 (0)
  239. iMax                     ds.w   1        ; offset: $2 (2)
  240. sizeof                     EQU *            ; size:   $4 (4)
  241.                         ENDR
  242.  
  243. ; typedef struct TRslRg     TRslRg
  244. TRslRec                 RECORD    0
  245. iXRsl                     ds.w   1        ; offset: $0 (0)
  246. iYRsl                     ds.w   1        ; offset: $2 (2)
  247. sizeof                     EQU *            ; size:   $4 (4)
  248.                         ENDR
  249.  
  250. ; typedef struct TRslRec     TRslRec
  251. TGetRslBlk                 RECORD    0
  252. iOpCode                     ds.w   1        ; offset: $0 (0)
  253. iError                     ds.w   1        ; offset: $2 (2)
  254. lReserved                 ds.l   1        ; offset: $4 (4)
  255. iRgType                     ds.w   1        ; offset: $8 (8)
  256. xRslRg                     ds     TRslRg    ; offset: $A (10)
  257. yRslRg                     ds     TRslRg    ; offset: $E (14)
  258. iRslRecCnt                 ds.w   1        ; offset: $12 (18)
  259. rgRslRec                 ds.b   27 * TRslRec.sizeof ; offset: $14 (20)
  260. sizeof                     EQU *            ; size:   $80 (128)
  261.                         ENDR
  262.  
  263. ; typedef struct TGetRslBlk  TGetRslBlk
  264. TSetRslBlk                 RECORD    0
  265. iOpCode                     ds.w   1        ; offset: $0 (0)
  266. iError                     ds.w   1        ; offset: $2 (2)
  267. lReserved                 ds.l   1        ; offset: $4 (4)
  268. hPrint                     ds.l   1        ; offset: $8 (8)
  269. iXRsl                     ds.w   1        ; offset: $C (12)
  270. iYRsl                     ds.w   1        ; offset: $E (14)
  271. sizeof                     EQU *            ; size:   $10 (16)
  272.                         ENDR
  273.  
  274. ; typedef struct TSetRslBlk  TSetRslBlk
  275. TDftBitsBlk             RECORD    0
  276. iOpCode                     ds.w   1        ; offset: $0 (0)
  277. iError                     ds.w   1        ; offset: $2 (2)
  278. lReserved                 ds.l   1        ; offset: $4 (4)
  279. hPrint                     ds.l   1        ; offset: $8 (8)
  280. sizeof                     EQU *            ; size:   $C (12)
  281.                         ENDR
  282.  
  283. ; typedef struct TDftBitsBlk  TDftBitsBlk
  284. TGetRotnBlk             RECORD    0
  285. iOpCode                     ds.w   1        ; offset: $0 (0)
  286. iError                     ds.w   1        ; offset: $2 (2)
  287. lReserved                 ds.l   1        ; offset: $4 (4)
  288. hPrint                     ds.l   1        ; offset: $8 (8)
  289. fLandscape                 ds.b   1        ; offset: $C (12)
  290. bXtra                     ds.b   1        ; offset: $D (13)
  291. sizeof                     EQU *            ; size:   $E (14)
  292.                         ENDR
  293.  
  294. ; typedef struct TGetRotnBlk  TGetRotnBlk
  295. ;
  296. ; pascal void PrPurge(void)
  297. ;
  298.     IF ¬ GENERATINGCFM THEN
  299.         Macro
  300.         _PrPurge
  301.             dc.w     $2F3C
  302.             dc.w     $A800
  303.             dc.w     $0000
  304.             dc.w     $A8FD
  305.         EndM
  306.     ELSE
  307.         IMPORT_CFM_FUNCTION    PrPurge
  308.     ENDIF
  309.  
  310. ;
  311. ; pascal void PrNoPurge(void)
  312. ;
  313.     IF ¬ GENERATINGCFM THEN
  314.         Macro
  315.         _PrNoPurge
  316.             dc.w     $2F3C
  317.             dc.w     $B000
  318.             dc.w     $0000
  319.             dc.w     $A8FD
  320.         EndM
  321.     ELSE
  322.         IMPORT_CFM_FUNCTION    PrNoPurge
  323.     ENDIF
  324.  
  325. ;
  326. ; pascal void PrOpen(void)
  327. ;
  328.     IF ¬ GENERATINGCFM THEN
  329.         Macro
  330.         _PrOpen
  331.             dc.w     $2F3C
  332.             dc.w     $C800
  333.             dc.w     $0000
  334.             dc.w     $A8FD
  335.         EndM
  336.     ELSE
  337.         IMPORT_CFM_FUNCTION    PrOpen
  338.     ENDIF
  339.  
  340. ;
  341. ; pascal void PrClose(void)
  342. ;
  343.     IF ¬ GENERATINGCFM THEN
  344.         Macro
  345.         _PrClose
  346.             dc.w     $2F3C
  347.             dc.w     $D000
  348.             dc.w     $0000
  349.             dc.w     $A8FD
  350.         EndM
  351.     ELSE
  352.         IMPORT_CFM_FUNCTION    PrClose
  353.     ENDIF
  354.  
  355. ;
  356. ; pascal void PrintDefault(THPrint hPrint)
  357. ;
  358.     IF ¬ GENERATINGCFM THEN
  359.         Macro
  360.         _PrintDefault
  361.             dc.w     $2F3C
  362.             dc.w     $2004
  363.             dc.w     $0480
  364.             dc.w     $A8FD
  365.         EndM
  366.     ELSE
  367.         IMPORT_CFM_FUNCTION    PrintDefault
  368.     ENDIF
  369.  
  370. ;
  371. ; pascal Boolean PrValidate(THPrint hPrint)
  372. ;
  373.     IF ¬ GENERATINGCFM THEN
  374.         Macro
  375.         _PrValidate
  376.             dc.w     $2F3C
  377.             dc.w     $5204
  378.             dc.w     $0498
  379.             dc.w     $A8FD
  380.         EndM
  381.     ELSE
  382.         IMPORT_CFM_FUNCTION    PrValidate
  383.     ENDIF
  384.  
  385. ;
  386. ; pascal Boolean PrStlDialog(THPrint hPrint)
  387. ;
  388.     IF ¬ GENERATINGCFM THEN
  389.         Macro
  390.         _PrStlDialog
  391.             dc.w     $2F3C
  392.             dc.w     $2A04
  393.             dc.w     $0484
  394.             dc.w     $A8FD
  395.         EndM
  396.     ELSE
  397.         IMPORT_CFM_FUNCTION    PrStlDialog
  398.     ENDIF
  399.  
  400. ;
  401. ; pascal Boolean PrJobDialog(THPrint hPrint)
  402. ;
  403.     IF ¬ GENERATINGCFM THEN
  404.         Macro
  405.         _PrJobDialog
  406.             dc.w     $2F3C
  407.             dc.w     $3204
  408.             dc.w     $0488
  409.             dc.w     $A8FD
  410.         EndM
  411.     ELSE
  412.         IMPORT_CFM_FUNCTION    PrJobDialog
  413.     ENDIF
  414.  
  415. ;
  416. ; pascal TPPrDlgRef PrStlInit(THPrint hPrint)
  417. ;
  418.     IF ¬ GENERATINGCFM THEN
  419.         Macro
  420.         _PrStlInit
  421.             dc.w     $2F3C
  422.             dc.w     $3C04
  423.             dc.w     $040C
  424.             dc.w     $A8FD
  425.         EndM
  426.     ELSE
  427.         IMPORT_CFM_FUNCTION    PrStlInit
  428.     ENDIF
  429.  
  430. ;
  431. ; pascal TPPrDlgRef PrJobInit(THPrint hPrint)
  432. ;
  433.     IF ¬ GENERATINGCFM THEN
  434.         Macro
  435.         _PrJobInit
  436.             dc.w     $2F3C
  437.             dc.w     $4404
  438.             dc.w     $0410
  439.             dc.w     $A8FD
  440.         EndM
  441.     ELSE
  442.         IMPORT_CFM_FUNCTION    PrJobInit
  443.     ENDIF
  444.  
  445. ;
  446. ; pascal void PrJobMerge(THPrint hPrintSrc, THPrint hPrintDst)
  447. ;
  448.     IF ¬ GENERATINGCFM THEN
  449.         Macro
  450.         _PrJobMerge
  451.             dc.w     $2F3C
  452.             dc.w     $5804
  453.             dc.w     $089C
  454.             dc.w     $A8FD
  455.         EndM
  456.     ELSE
  457.         IMPORT_CFM_FUNCTION    PrJobMerge
  458.     ENDIF
  459.  
  460. ;
  461. ; pascal Boolean PrDlgMain(THPrint hPrint, PDlgInitUPP pDlgInit)
  462. ;
  463.     IF ¬ GENERATINGCFM THEN
  464.         Macro
  465.         _PrDlgMain
  466.             dc.w     $2F3C
  467.             dc.w     $4A04
  468.             dc.w     $0894
  469.             dc.w     $A8FD
  470.         EndM
  471.     ELSE
  472.         IMPORT_CFM_FUNCTION    PrDlgMain
  473.     ENDIF
  474.  
  475. ;
  476. ; pascal TPPrPort PrOpenDoc(THPrint hPrint, TPPrPort pPrPort, Ptr pIOBuf)
  477. ;
  478.     IF ¬ GENERATINGCFM THEN
  479.         Macro
  480.         _PrOpenDoc
  481.             dc.w     $2F3C
  482.             dc.w     $0400
  483.             dc.w     $0C00
  484.             dc.w     $A8FD
  485.         EndM
  486.     ELSE
  487.         IMPORT_CFM_FUNCTION    PrOpenDoc
  488.     ENDIF
  489.  
  490. ;
  491. ; pascal void PrCloseDoc(TPPrPort pPrPort)
  492. ;
  493.     IF ¬ GENERATINGCFM THEN
  494.         Macro
  495.         _PrCloseDoc
  496.             dc.w     $2F3C
  497.             dc.w     $0800
  498.             dc.w     $0484
  499.             dc.w     $A8FD
  500.         EndM
  501.     ELSE
  502.         IMPORT_CFM_FUNCTION    PrCloseDoc
  503.     ENDIF
  504.  
  505. ;
  506. ; pascal void PrOpenPage(TPPrPort pPrPort, TPRect pPageFrame)
  507. ;
  508.     IF ¬ GENERATINGCFM THEN
  509.         Macro
  510.         _PrOpenPage
  511.             dc.w     $2F3C
  512.             dc.w     $1000
  513.             dc.w     $0808
  514.             dc.w     $A8FD
  515.         EndM
  516.     ELSE
  517.         IMPORT_CFM_FUNCTION    PrOpenPage
  518.     ENDIF
  519.  
  520. ;
  521. ; pascal void PrClosePage(TPPrPort pPrPort)
  522. ;
  523.     IF ¬ GENERATINGCFM THEN
  524.         Macro
  525.         _PrClosePage
  526.             dc.w     $2F3C
  527.             dc.w     $1800
  528.             dc.w     $040C
  529.             dc.w     $A8FD
  530.         EndM
  531.     ELSE
  532.         IMPORT_CFM_FUNCTION    PrClosePage
  533.     ENDIF
  534.  
  535. ;
  536. ; pascal void PrPicFile(THPrint hPrint, TPPrPort pPrPort, Ptr pIOBuf, Ptr pDevBuf, TPrStatus *prStatus)
  537. ;
  538.     IF ¬ GENERATINGCFM THEN
  539.         Macro
  540.         _PrPicFile
  541.             dc.w     $2F3C
  542.             dc.w     $6005
  543.             dc.w     $1480
  544.             dc.w     $A8FD
  545.         EndM
  546.     ELSE
  547.         IMPORT_CFM_FUNCTION    PrPicFile
  548.     ENDIF
  549.  
  550. ;
  551. ; pascal short PrError(void)
  552. ;
  553.     IF ¬ GENERATINGCFM THEN
  554.         Macro
  555.         _PrError
  556.             dc.w     $2F3C
  557.             dc.w     $BA00
  558.             dc.w     $0000
  559.             dc.w     $A8FD
  560.         EndM
  561.     ELSE
  562.         IMPORT_CFM_FUNCTION    PrError
  563.     ENDIF
  564.  
  565. ;
  566. ; pascal void PrSetError(short iErr)
  567. ;
  568.     IF ¬ GENERATINGCFM THEN
  569.         Macro
  570.         _PrSetError
  571.             dc.w     $2F3C
  572.             dc.w     $C000
  573.             dc.w     $0200
  574.             dc.w     $A8FD
  575.         EndM
  576.     ELSE
  577.         IMPORT_CFM_FUNCTION    PrSetError
  578.     ENDIF
  579.  
  580. ;
  581. ; pascal void PrGeneral(Ptr pData)
  582. ;
  583.     IF ¬ GENERATINGCFM THEN
  584.         Macro
  585.         _PrGeneral
  586.             dc.w     $2F3C
  587.             moveq    #7,d0
  588.             dc.w     $0480
  589.             dc.w     $A8FD
  590.         EndM
  591.     ELSE
  592.         IMPORT_CFM_FUNCTION    PrGeneral
  593.     ENDIF
  594.  
  595. ;
  596. ; pascal void PrDrvrOpen(void)
  597. ;
  598.     IF ¬ GENERATINGCFM THEN
  599.         Macro
  600.         _PrDrvrOpen
  601.             dc.w     $2F3C
  602.             dc.w     $8000
  603.             dc.w     $0000
  604.             dc.w     $A8FD
  605.         EndM
  606.     ELSE
  607.         IMPORT_CFM_FUNCTION    PrDrvrOpen
  608.     ENDIF
  609.  
  610. ;
  611. ; pascal void PrDrvrClose(void)
  612. ;
  613.     IF ¬ GENERATINGCFM THEN
  614.         Macro
  615.         _PrDrvrClose
  616.             dc.w     $2F3C
  617.             dc.w     $8800
  618.             dc.w     $0000
  619.             dc.w     $A8FD
  620.         EndM
  621.     ELSE
  622.         IMPORT_CFM_FUNCTION    PrDrvrClose
  623.     ENDIF
  624.  
  625. ;
  626. ; pascal void PrCtlCall(short iWhichCtl, long lParam1, long lParam2, long lParam3)
  627. ;
  628.     IF ¬ GENERATINGCFM THEN
  629.         Macro
  630.         _PrCtlCall
  631.             dc.w     $2F3C
  632.             dc.w     $A000
  633.             dc.w     $0E00
  634.             dc.w     $A8FD
  635.         EndM
  636.     ELSE
  637.         IMPORT_CFM_FUNCTION    PrCtlCall
  638.     ENDIF
  639.  
  640. ;
  641. ; pascal Handle PrDrvrDCE(void)
  642. ;
  643.     IF ¬ GENERATINGCFM THEN
  644.         Macro
  645.         _PrDrvrDCE
  646.             dc.w     $2F3C
  647.             dc.w     $9400
  648.             dc.w     $0000
  649.             dc.w     $A8FD
  650.         EndM
  651.     ELSE
  652.         IMPORT_CFM_FUNCTION    PrDrvrDCE
  653.     ENDIF
  654.  
  655. ;
  656. ; pascal short PrDrvrVers(void)
  657. ;
  658.     IF ¬ GENERATINGCFM THEN
  659.         Macro
  660.         _PrDrvrVers
  661.             dc.w     $2F3C
  662.             dc.w     $9A00
  663.             dc.w     $0000
  664.             dc.w     $A8FD
  665.         EndM
  666.     ELSE
  667.         IMPORT_CFM_FUNCTION    PrDrvrVers
  668.     ENDIF
  669.  
  670. ;
  671. ; pascal short PrLoadDriver(void)
  672. ;
  673.     IF ¬ GENERATINGCFM THEN
  674.         Macro
  675.         _PrLoadDriver
  676.             dc.w     $2F3C
  677.             dc.w     $D800
  678.             dc.w     $0000
  679.             dc.w     $A8FD
  680.         EndM
  681.     ELSE
  682.         IMPORT_CFM_FUNCTION    PrLoadDriver
  683.     ENDIF
  684.  
  685.     ENDIF ; __PRINTING__
  686.